package com.weimob.mcloud.wechatwork.customer.convertor.customer;

import com.weimob.mcloud.wechatwork.common.pojo.vo.BasicInfoVO;
import com.weimob.mcloud.wechatwork.customer.service.user.base.BasicInfo;
import com.weimob.mcloud.wechatwork.customer.service.user.module.dto.customer.ExternalUserInfoFindDTO;
import com.weimob.wechatworkassistant.wechatworkcustomerexporter.service.user.dto.req.CustomerExporterQueryDTO;
import org.springframework.beans.BeanUtils;

/**
 * @author yuanhao
 * @date 2022/10/21 16:04
 */
public class ExporterConvert {


    /**
     * 转换为导出的dto
     * @param findDTO
     * @return
     */
    public static CustomerExporterQueryDTO convertToExporterDTO(ExternalUserInfoFindDTO findDTO){
        CustomerExporterQueryDTO exporterQueryDTO = new CustomerExporterQueryDTO();
        BasicInfo basicInfo = findDTO.getBasicInfo();
        BasicInfoVO basicInfoVO = new BasicInfoVO();
        BeanUtils.copyProperties(basicInfo,basicInfoVO);

        exporterQueryDTO.setBasicInfo(basicInfoVO);
        exporterQueryDTO.setAddFriendStartTime(findDTO.getAddFriendStartTime());
        exporterQueryDTO.setAddFriendEndTime(findDTO.getAddFriendEndTime());
        exporterQueryDTO.setFirstAddStartTime(findDTO.getFirstAddStartTime());
        exporterQueryDTO.setFirstAddEndTime(findDTO.getFirstAddEndTime());
        exporterQueryDTO.setNickName(findDTO.getNickName());
        exporterQueryDTO.setGender(findDTO.getGender());
        exporterQueryDTO.setAddStartTime(findDTO.getAddStartTime());
        exporterQueryDTO.setAddEndTime(findDTO.getAddEndTime());
        exporterQueryDTO.setTagIds(findDTO.getTagIds());
        exporterQueryDTO.setAttIds(findDTO.getAttIds());
        exporterQueryDTO.setFollowStatus(findDTO.getFollowStatus());
        exporterQueryDTO.setAddMultiUsers(findDTO.getAddMultiUsers());
        exporterQueryDTO.setPageNum(findDTO.getPageNum());
        exporterQueryDTO.setPageSize(findDTO.getPageSize());
        exporterQueryDTO.setOrgUserIdList(findDTO.getOrgUserIdList());
        exporterQueryDTO.setPhone(findDTO.getPhone());
        exporterQueryDTO.setAddWay(findDTO.getAddWay());
        exporterQueryDTO.setSubAddWay(findDTO.getSubAddWay());
        exporterQueryDTO.setWid(findDTO.getBwid());
        //流程-阶段筛选
        exporterQueryDTO.setProcessId(findDTO.getProcessId());
        exporterQueryDTO.setStageId(findDTO.getStageId());
        //客户星级
        exporterQueryDTO.setCustomerRating(findDTO.getCustomerRating());
        return exporterQueryDTO;
    }
}
